TOP

Camel Case Funkcja dla LibreOffice Calc

YLC Utilities logo

CAMELCASE() Opis

Funkcja CAMELCASE() ma na celu łączenie słów o zmiennej wielkości liter, co oznacza, że w rezultacie zwracane jest pojedyncze słowo, na przykład „camelCaseFunction”.

Camel Case dzieli ciąg słów oddzielonych spacjami, łącznikami, podkreśleniami lub wielkością liter na osobne elementy. Następnie konwertuje wszystkie te słowa na wielkie litery, z wyjątkiem pierwszego, które jest konwertowane na małe litery i łączy wszystkie elementy w jedno słowo.

Funkcja CAMELCASE() może być przydatna w programowaniu do konwersji nazw zmiennych zgodnie z przyjętymi konwencjami pisania kodu (coding conventions) .


StarBASIC kod funkcji Camel Case

Oto kod makra umożliwiający utworzenie niestandardowej funkcji, która może łączyć różne słowa w jedno, gdzie części logiczne zostaną oddzielone zmienną wielkością liter (Camel Case) w LibreOffice Calc.

Otwórz menu Tools - Macros - Edit Macros..., wybierz Module1 i skopiuj następujący tekst do modułu:

Function CamelCase(ByVal str As String) As String
  'moonexcel.com.ua
  Dim words As Variant
  Dim i     As Integer
  Dim FCalc As Object
  
  FCalc = CreateUnoService("com.sun.star.sheet.FunctionAccess")
  
  str = Replace(str,"-"," ")
  str = Replace(str,"_"," ")  
  str = FCalc.callFunction("TRIM", Array(str))  
  str = FCalc.callFunction("REGEX", Array(str,"([:lower:])([:upper:])","$1 $2","g"))
    
  str = LCase(str)
  words = Split(str, " ")
    
  For i = LBound(words) + 1 To UBound(words)       
    words(i) = UCase(Left(words(i), 1)) & Mid(words(i), 2)       
  Next i
    
  CamelCase = Join(words,"")
End Function

Następnie zamknij Macro Editor, wróć do LibreOffice Calc i użyj naszej nowej funkcji w dowolnej komórce.

Korzystanie z rozszerzenia

Możesz także skorzystać z tej funkcji CAMELCASE() instalując darmowe rozszerzenie YouLibreCalc.oxt lub jego w pełni funkcjonalna wersja YLC_Utilities.oxt .

Od tego momentu ta funkcja będzie dostępna we wszystkich plikach, które zostaną otwarte w LibreOffice Calc.